/**
 * 请求拦截
 * @param {Object} http
 */
// import config from '@/common/config'
// 引入配置
export const requestInterceptors = (vm) => {
	uni.$uv.http.interceptors.request.use((config) => { // 可使用async await 做异步操作
			// 初始化请求拦截器时，会执行此方法，此时data为undefined，赋予默认{}
			config.data = config.data || {}
			config.data['_t'] = new Date().getTime();
			// 可以在此通过vm引用vuex中的变量，具体值在vm.$store.state中
			// console.log(vm.$store.state);
			// 根据custom参数中配置的是否需要token，添加对应的请求头
			if (config?.custom?.auth && vm.$store.state.vuex_token) {
				// 可以在此通过vm引用vuex中的变量，具体值在vm.$store.state中
				config.header['Authorization'] = "Bearer " + vm.aes_decrypt(vm.$store.state.vuex_token);
			}
			if (config?.custom?.refresh && vm.$store.state.refreshToken) {
				// 可以在此通过vm引用vuex中的变量，具体值在vm.$store.state中
				config.header['Authorization'] = "Bearer " + vm.aes_decrypt(vm.$store.state.refreshToken);
			}
			
			config.header['Cache-Control'] = 'no-cache';
			config.header['Last-Modified'] = new Date().getTime();
			return config
		}, (config) => // 可使用async await 做异步操作
		Promise.reject(config))
}